package com.ftg.learn.day11.function;

import com.ftg.learn.day08.isa.Dog;

import java.util.function.*;

/**
 *
 * 定义一个关于字符串的方法
 * 对两个字符串进行处理的，封装一个通用方法
 *
 * @author 布衣
 */
public class Question1 {

    public static void forEach(int[] arr,Consumer<Integer> t){
        for (int i = 0; i < arr.length; i++) {
            t.accept(arr[i]);
        }
    }

    public static int filter(String str,Predicate<String> t){
        if (t.test(str)) {
            return 100;
        }
        return 0;
    }

    Supplier<Dog> x1 = Dog::new;
    Supplier<Dog> x = ()->new Dog();


    public static void main(String[] args) {
        forEach(new int[]{1,2,3,4,5,6},x->System.out.println(x));
        System.out.println(filter("优+", (x) -> x.equals("优+")));
//        现有函数式接口

//        消费型 ： 只消费没有返回
//        Consumer
//        BiConsumer
//        供给型
//        Supplier
//        断言型
//        Predicate
//        BiPredicate
//        函数式
//        Function
//        BiFunction
//        IntFunction

    }
}
